<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" />
    <title>opendfl-console</title>
</head>
<body>
<b>OpenDFL Console</b><br/>
<br/>
<p>
    <a href="index.html">中文</a> <br/>
    <a href="login.html">Login</a> <br/>
</p>

<p>
    <b>Query function</b><br/>
    <a href="pages/requestScans.html">Requests from class</a> <br/>
    <a href="pages/requests.html">Requests from request</a> <br/>
    <a href="pages/frequencys.html">Frequencys</a><br/>
    <a href="pages/locks.html">Locks</a><br/>
    <a href="pages/captcha.html">Captcha reset limit</a><br/>
</p>


<p>
    <b>Interface Test</b><br/>
    <a href="/frequencyTest/monitor?userId=123">monitor(recently 30s)</a> <br/>
    <a href="/frequencyTest/serverTime?userId=123">no limit</a> <br/>
    <a href="/frequencyTest/serverTimeFreq?userId=123">@Frequency</a> <br/>
    <a href="/frequencyTest/serverTimeFreq?userId=123&dataId=dd123">@Frequency data</a> <br/>
    <a href="/frequencyTest/serverTimeFreqIpUv?userId=123&dataId=dd124">@Frequency ip count</a> <br/>
    <a href="/frequencyTest/serverTimeLimitIp?userId=123">@Frequency ip pv</a> <br/>
    <a href="/frequencyTest/serverTimeFreqResIp?userId=123&dataId=abcd">@Frequency resource ip pv</a> <br/>
    <a href="/frequencyTest/serverTimeFreqResUser?userId=123&dataId=abcd2">@Frequency resource user pv</a> <br/>
    <a href="/frequencyTest/serverTimeFreqIp?userId=123">@Frequency ip</a> <br/>
    <a href="/frequencyTest/serverTimeNeedLogin">@Frequency need login(not login)</a> <br/>
    <a href="/frequencyTest/serverTimeNeedLogin?userId=123">@Frequency need login(login)</a> <br/>
    <a href="/frequencyTest/serverTimeUri?account=123">uriConfig</a> <br/>
    <a href="/frequencyTest/serverTimeFreqDevice?deviceId=blackDevice123">blackDevice</a> <br/>
    <a href="/frequencyTest/serverTimeFreq?userId=5103">blackUser</a> <br/>
    <a href="/lockTest/waitLockTestUser?userId=123&sleepTime=1">@RequestLock lock by user</a> <br/>
    <a href="/lockTest/waitLockTestOrder?userId=123&orderId=order123&sleepTime=1">@RequestLock lock redis</a> <br/>
    <a href="/lockTest/waitLockTestOrderEtcdKv?userId=123&orderId=order123&sleepTime=1">@RequestLock lock etcd KV</a> <br/>
    <a href="/lockTest/waitLockTestOrderEtcdLock?userId=123&orderId=order123&sleepTime=1">@RequestLock lock etcd lock</a> <br/>
    <a href="/lockTest/waitLockTestOrderZk?userId=123&orderId=order123&sleepTime=1">@RequestLock lock ZK</a> <br/>
</p>


<p>
    <b>System manage</b><br/>
    <a href="/pages/system/dflUser.html">Users</a> <br/>
    <a href="/pages/system/dflRole.html">Roles</a> <br/>
    <a href="/pages/system/dflUserRole.html">User roles</a> <br/>
    <!--
    <a href="/pages/system/dflResource.html">Resources</a> <br/>
    <a href="/pages/system/dflResourceTree.html">资源管理Tree</a> <br/>
    <a href="/pages/system/dflResource.html">角色资源管理</a> <br/>
    -->
    <a href="/pages/system/dflSystemConfigTree.html">System config</a> <br/>
    <a href="/pages/basedata/dflTypeManage.html">Code dicts</a> <br/>
</p>

<p>
    <b>Logs</b><br/>
    <a href="/pages/logs/dflAuditLog.html">Audit log</a> <br/>
    <a href="/pages/logs/dflOutLimitLog.html">Out limit Log</a> <br/>
    <a href="/pages/logs/dflOutLimitLogCount.html">Out limit statistic</a> <br/>
    <a href="/pages/logs/dflOutLockLog.html">Out lock log</a> <br/>
    <a href="/pages/logs/dflRequestScans.html">Controller apis</a> <br/>
</p>

<p>
    <b>opendfl config</b><br/>
    <a href="/pages/dflcore/dflBlackWhiteManage.html">Black whate list</a> <br/>
    <a href="/pages/dflcore/dflFrequency.html">Frequency config</a> <br/>
    <a href="/pages/dflcore/dflLocks.html">Locks config</a> <br/>
</p>

</body>
</html>